package cn.gcyl.module.biz.controller.admin.specialmeeting.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 专场会议管理新增/修改 Request VO")
@Data
public class SpecialMeetingSaveReqVO {

    @Schema(description = "会议id", requiredMode = Schema.RequiredMode.REQUIRED, example = "26107")
    private Long id;

    @Schema(description = "会议名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
    @NotEmpty(message = "会议名称不能为空")
    private String meetingName;

    @Schema(description = "会议简介", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "会议简介不能为空")
    private String meetingSynopsis;

    @Schema(description = "会议开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "会议开始时间不能为空")
    private LocalDateTime startTime;

    @Schema(description = "会议结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "会议结束时间不能为空")
    private LocalDateTime endTime;

    @Schema(description = "是否为免费会议（0是 1否）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "是否为免费会议（0是 1否）不能为空")
    private Integer isFreeMeeting;

    @Schema(description = "会议方案id", example = "18976")
    private String meetingPlanId;

    @Schema(description = "会议地址")
    private String meetingAddress;

    @Schema(description = "封面", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "封面不能为空")
    private String cover;

    @Schema(description = "轮播图", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "轮播图不能为空")
    private String carouselImage;

    @Schema(description = "会议详情", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "会议详情不能为空")
    private String details;
    /**
     * 是否收藏(0未收藏 1已收藏)
     */
    private Integer isCollect;
    /**
     * 是否置顶
     */
    @Schema(description = "是否置顶", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer isTop;

    /**
     * 排序
     */
    @Schema(description = "排序")
    private Integer sort;
}